package com.saihai.jiankang.Jkleave.domain;

import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.saihai.common.annotation.Excel;
import com.saihai.common.core.domain.BaseEntity;

import java.util.Date;

/**
 * 请假对象 jk_leave
 * 
 * @author ruoyi
 * @date 2024-07-02
 */
public class JkLeave extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** id */
    private Long id;

    /** 申请人 */
    @Excel(name = "申请人")
    private String name;

    /** 学生id */
    @Excel(name = "学生id")
    private Long xsId;

    /** 请假类型(0事假1病假) */
    @Excel(name = "请假类型(0事假1病假)")
    private String qjType;

    /** 就诊状态（0未就诊1就诊） */
    @Excel(name = "就诊状态", readConverterExp = "0=未就诊1就诊")
    private String visitStatus;

    /** 症状 */
    @Excel(name = "症状")
    private String symptom;

    /** 开始时间 */
    @Excel(name = "开始时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date startTime;

    /** 结束时间 */
    @Excel(name = "结束时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date endTime;

    /** 原因 */
    @Excel(name = "原因")
    private String reason;

    /** 文件地址 */
    @Excel(name = "文件地址")
    private String fileUrl;

    /** 审批状态（0待审核） */
    @Excel(name = "审批状态", readConverterExp = "0=待审核")
    private String status;

    /** 家长userid（对应jk_user_id） */
    @Excel(name = "家长userid", readConverterExp = "对=应jk_user_id")
    private Long jkUserId;

    /** 驳回原因 */
    @Excel(name = "驳回原因")
    private String rejectReason;

    /** 学校id */
    @Excel(name = "学校id")
    private Long xxId;

    /** 班级id */
    @Excel(name = "班级id")
    private Long bjId;


    /** 诊断疾病 */
    @Excel(name = "诊断疾病")
    private String zdjb;

    /** 发病日期 */
    @Excel(name = "发病日期")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date fbTime;

    /** 确诊日期 */
    @Excel(name = "确诊日期")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date qzTime;

    /** 确诊机构 */
    @Excel(name = "确诊机构")
    private String qzjg;

    public Date getFbTime() {
        return fbTime;
    }

    public void setFbTime(Date fbTime) {
        this.fbTime = fbTime;
    }

    public Date getQzTime() {
        return qzTime;
    }

    public void setQzTime(Date qzTime) {
        this.qzTime = qzTime;
    }

    public Date getStartTime() {
        return startTime;
    }

    public void setStartTime(Date startTime) {
        this.startTime = startTime;
    }

    public Date getEndTime() {
        return endTime;
    }

    public void setEndTime(Date endTime) {
        this.endTime = endTime;
    }

    public String getZdjb() {
        return zdjb;
    }

    public void setZdjb(String zdjb) {
        this.zdjb = zdjb;
    }


    public String getQzjg() {
        return qzjg;
    }

    public void setQzjg(String qzjg) {
        this.qzjg = qzjg;
    }

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setName(String name) 
    {
        this.name = name;
    }

    public String getName() 
    {
        return name;
    }
    public void setXsId(Long xsId) 
    {
        this.xsId = xsId;
    }

    public Long getXsId() 
    {
        return xsId;
    }
    public void setQjType(String qjType) 
    {
        this.qjType = qjType;
    }

    public String getQjType() 
    {
        return qjType;
    }
    public void setVisitStatus(String visitStatus) 
    {
        this.visitStatus = visitStatus;
    }

    public String getVisitStatus() 
    {
        return visitStatus;
    }
    public void setSymptom(String symptom) 
    {
        this.symptom = symptom;
    }

    public String getSymptom()
    {
        return symptom;
    }

    public void setReason(String reason)
    {
        this.reason = reason;
    }

    public String getReason() 
    {
        return reason;
    }
    public void setFileUrl(String fileUrl) 
    {
        this.fileUrl = fileUrl;
    }

    public String getFileUrl() 
    {
        return fileUrl;
    }
    public void setStatus(String status) 
    {
        this.status = status;
    }

    public String getStatus() 
    {
        return status;
    }
    public void setJkUserId(Long jkUserId) 
    {
        this.jkUserId = jkUserId;
    }

    public Long getJkUserId() 
    {
        return jkUserId;
    }
    public void setRejectReason(String rejectReason) 
    {
        this.rejectReason = rejectReason;
    }

    public String getRejectReason() 
    {
        return rejectReason;
    }
    public void setXxId(Long xxId) 
    {
        this.xxId = xxId;
    }

    public Long getXxId() 
    {
        return xxId;
    }
    public void setBjId(Long bjId) 
    {
        this.bjId = bjId;
    }

    public Long getBjId() 
    {
        return bjId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("name", getName())
            .append("xsId", getXsId())
            .append("qjType", getQjType())
            .append("visitStatus", getVisitStatus())
            .append("symptom", getSymptom())
            .append("startTime", getStartTime())
            .append("endTime", getEndTime())
            .append("reason", getReason())
            .append("fileUrl", getFileUrl())
            .append("status", getStatus())
            .append("jkUserId", getJkUserId())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .append("rejectReason", getRejectReason())
            .append("xxId", getXxId())
            .append("bjId", getBjId())
            .toString();
    }
}
